package ui;

import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import java.awt.Font;
import java.util.Locale;

/**
 * <p>Title: TomAudioPlayer</p>
 *
 * <p>Description: a audio player powered by Java Media Framework </p>
 *
 * <p>Copyright: Copyright (c) 2005 IamCoolTom Software Corporation. All Rights
 * Reserved</p>
 *
 * <p>Company: IamCoolTom Software Corporation</p>
 *
 * @author ShanboLi
 * @version 1.0
 */
public class MainApplication {
  boolean packFrame = false;

  /**
   * Construct and show the application.
   */
  public MainApplication() {
    MainFrame frame = new MainFrame();
    // Validate frames that have preset sizes
    // Pack frames that have useful preferred size info, e.g. from their layout
    if (packFrame) {
      frame.pack();
    }
    else {
      frame.validate();
    }
    
//  Center the window
    frame.setLocationRelativeTo(null);

    
//    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
//    Dimension frameSize = frame.getSize();
//    if (frameSize.height > screenSize.height) {
//      frameSize.height = screenSize.height;
//    }
//    if (frameSize.width > screenSize.width) {
//      frameSize.width = screenSize.width;
//    }
//    frame.setLocation( (screenSize.width - frameSize.width) / 2,
//                      (screenSize.height - frameSize.height) / 2);
    frame.setVisible(true);
  }

  /**
   * Application entry point.
   *
   * @param args String[]
   */
  public static void main(String[] args) {
    SwingUtilities.invokeLater(new Runnable() {
      public void run() {
        try {
         UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
         //set the font of short cut
          Font standardFont = new Font("Times New Roman", Font.PLAIN, 14);
          UIManager.put("MenuItem.acceleratorFont", standardFont);
        }

        catch (Exception exception) {
          exception.printStackTrace();
        }
        
        Locale.setDefault(Locale.ENGLISH);
//         Locale.setDefault(Locale.JAPANESE);
//        Locale.setDefault(Locale.FRENCH);
//        Locale.setDefault(Locale.GERMAN);
        new MainApplication();
      }
    });
  }
}
